home *** CD-ROM | disk | FTP | other *** search
- /*
- Last updated : Fri Sep 13 22:04:22 1996
-
- J.S.Peatfield@damtp.cam.ac.uk
-
- Copyright (c) University of Cambridge, 1993,1994,1995,1996
-
- $Revision: 1.1 $
- $Date: 1996/12/06 20:34:57 $
- */
-
- #define BPCVERSION "BOOTPclient VRELEASEVERSION"
-
- /* Tell the server to broadcast to reach me flag */
- #define BPFLAG_BROADCAST ( 1 << 16 )
-
- /* Back in NET2 (and before?) the ifreq.ifr_hwaddr was a char array,
- but in NET3 it is now a "sockaddr", and we need the data part.
-
- The code to work on older kernels has now been removed as it caused
- problems on some systems where this test no longer works (e.g. the
- AlphaLinux). Is anyone really running 1.1.13 or earlier kernels
- anymore?
-
- If you still have an old kernel and need bootpc stick with version
- 0.45 which is the last release to support the NET2 code.
-
- */
-
- /* local headers */
- #include "bootp.h"
- #include "log.h"
-
- /* for extracting the right part... */
- #define use_hwaddr ifr_hwaddr.sa_data
-
- /* Needed for getopt stuff */
- extern char *optarg;
- extern int optind, opterr, optopt;
-
- /* declarations */
- int BootpFatal();
-
- void ParsePacket(struct bootp *bootp_recv,
- int cookielength,
- unsigned char *match) ;
-
- void OutList(char *name,
- unsigned char *cookie,
- int len) ;
-
- void OutString(char *name,
- unsigned char *cookie,
- int len) ;
-
- void OutSearch(char *name,
- unsigned char *cookie,
- int len) ;
-
- void safecopy(unsigned char *out,
- unsigned char *string,
- int len) ;
-
- void doOut(char *name,
- char *lenv) ;
-
- int in2host(char *address,
- int print) ;
-
- int performBootp(char *device,
- char *server,
- char *bootfile,
- int timeout_wait,
- int givenhwaddr,
- struct ifreq *ifr,
- int waitformore,
- int returniffail,
- int print) ;
-
- /* My global variables */
- extern int bootp_verbose ; /* verbose mode or not 10/02/94 JSP */
- extern int bootp_debug ; /* debug mode or not 14/02/94 JSP */
-
- #define BP_PRINT_OUT (1)
- #define BP_PUT_ENV (2)
-